/* -*-jde-*- */
/* <WorstCases.java>*/
package Practica4.sort;

/**
 * Contiene algunos de los peores casos para los algoritmos de ordenamiento
 *
 * @author	Peralta Santa Anna Victor Miguel
 * @since	Julio 2011
 */
public interface WorstCases {

    /**
     * Genera un ejemplar que es el peor caso para Local Insertion Sort
     * volviendolo de orden cuadratico; el elemento inicial de la lista zigzag
     * es generado al azar y debe ser un numero entre 1 y 100.
     *
     * @param num_elements el numero de elementos que tendra éste ejemplar
     * @return el arreglo con el peor caso para LocalInsertionSort
     */
    public int[] forLocalInsertionSort(int num_elements);

    /**
     * Genera un ejemplar que es el peor caso para Quick Sort con pivote tomado enmedio.
     *
     * @param num_elements el numero de elementos que tendra esta secuencia
     * @return el arreglo con la secuencia descrita
     */
    public int[] forQuickSort(int num_elements);

    /**
     * Genera una secuencia en reversa. peor caso para quick con pivote A[last], A[first] entre otros.
     *
     * @param elements el numero de elementos que tendra el arreglo final
     * @return el arreglo con la secuencia en reversa
     */
    public int[] reverseSequence(int elements);

    /**
     * Genera una secuencia ordenada. peor caso para quick con pivote A[last], A[first] entre otros.
     *
     * @param elements el numero de elementos que tendra el arreglo final
     * @return el arreglo con la secuencia ordenada
     */
    public int[] orderedSequence(int elements);
}// WorstCases

